class Basic:
    #self代表普通函数与类方法的区别
    def run(self,miles):
        print(f'脚踩了好久，骑行了很久{miles}，真累')
        pass

class Ebicycle(Basic):
    #构造函数，类实例化的时候传递参数
    #类变量作用域：整个类
    #普通变量：当前方法
    #实例变量：作用域实例
    def __init__(self,valume):
        self.valume = valume
    def fill_charge(self,add_valume):
        #判断传值为int类型
        if isinstance(add_valume,int):
            self.valume = self.valume +add_valume

    def run(self,miles):
        #消耗的路程
        run_miles = self.valume*10
        print(f'骑行了 {run_miles}公里')

        res_miles = miles -run_miles

        if res_miles >= 0 :
            print(f'还能继续骑行{res_miles}公里')
        else:
            print('您无法继续骑行')
            #子类方法与父类同名时会覆盖方法重写，此时再次调用父类的需要super()
            super().run( miles - run_miles )

if __name__ == '__main__':
    a=Ebicycle(10)
    a.run(15)